library(Seurat)
library(monocle)
library(dplyr)
library(ggplot2)

Genes to plot

Load data

#get expression values for every cell ID from the new cds
genes_df <- as.matrix(t(seurobj@data[genes, df_pdata$original_cell_id]))
Error in intI(i, n = d[1], dn[[1]], give.dn = FALSE) : 
  invalid character indexing

Pseudotime plots.

plot_grid(plotlist=plots, ncol=4)
Error in grid.newpage() : 
  could not open file '/home/cbmr/pytrik/.rstudio/notebooks/D65E8D76-10x-180831-pseudotime/1/AF50CEB7fdafc1e6/c0n9zbdwzhdwc_t/_rs_chunk_plot_001.png'

Pseudotime plots T5 precursors

genes <- c('CFD','FABP4','SAA1', 'APOE','MGP','GSN','GPX3','ADH1B','APOD','MT1X')
genes2 <- c('KRT18', 'THBS1', 'PTX3', 'CTGF', 'SERPINE2', 'TAGLN', 'TM4SF1')
df_pdata_T5 <- T5_precursors@meta.data[c('State.labels', 'Pseudotime_stretched')]
genes_df_T5 <- as.matrix(t(T5_precursors@data[unique(c(genes, genes2)),]))
df_T5 <- cbind(df_pdata_T5, as.data.frame(genes_df_T5))
plot_pseudotime_T5 <- function(gene){
  p <- ggplot(df_T5, aes_string(x='Pseudotime_stretched', y=gene)) +
    geom_point(shape = 21, colour = "black", size = 1, stroke = 0, alpha=0.2, aes(fill=State.labels), show.legend=F) +
    geom_smooth(se = FALSE, aes(color=State.labels), span=0.9, method='loess', size=2, show.legend=F)  + 
    scale_color_manual(values=c('#ede5b6')) +
    scale_fill_manual(values=colors.pseudotime.points) +
    scale_y_continuous(minor_breaks=1) +
    xlab('Pseudotime (stretched)') +
    ggtitle(gene) +
    ylab('Expression') +
    theme(plot.title = element_text(size=30), legend.text=element_text(size=30), axis.text=element_text(size=15), axis.title=element_text(size=20), legend.title=element_text(size=30), legend.key.size=unit(1.5, 'cm'))
  return(p)
}
plots <- lapply(genes, plot_pseudotime_T5)
plot_grid(plotlist=plots, ncol=3)

FeaturePlots

LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKCmBgYHtyIG1lc3NhZ2U9Rn0KbGlicmFyeShTZXVyYXQpCmxpYnJhcnkobW9ub2NsZSkKbGlicmFyeShkcGx5cikKbGlicmFyeShnZ3Bsb3QyKQpgYGAKCkdlbmVzIHRvIHBsb3QKCmBgYHtyfQpnZW5lcyA8LSBjKCdBRElQT1EnLCAnTUdQJywgJ1VDUDInLCAnVUNQMScsICdEQ04nLCAnQVBPRCcsICdJR0YyJywgJ1BQQVJHJywgJ1BSRE0xNicsICdFQkYyJywgJ1BER0ZSQScsICdQREdGUkInLCAnRkFCUDUnLCAnRkFCUDQnLCAnTEVQJywgJ0NFQlBBJywgJ0NFQlBCJywgJ0NFQlBEJywgJ0cwUzInLCAnRk9TJywgJ0ZOMScsICdLUlQxOCcsICdUSEJTMScsICdQVFgzJywgJ0NGRCcsICdTQUExJykKYGBgCgpMb2FkIGRhdGEKCmBgYHtyfQpuZXdfY2RzIDwtIHJlYWRSRFMoJy4uL291dHB1dC9tb25vY2xlLzE4MDgzMS8xMHgtMTgwODMxLW1vbm9jbGUtbW9ub2NsZV9nZW5lbGlzdF9UMVQyVDNfVDRUNV9yZXMuMS41X2R1cGxpY2F0ZWQtcHJvZ2VuaXRvcl9zdHJldGNoZWQtcHNldWRvdGltZScpCiNuZXcgY2RzIGNvbnRhaW5zIGR1cGxpY2F0ZWQgcHJvZ2VuaXRvciBjZWxscyAob25lIGFzc2lnbmVkIHRvIGVhY2ggYnJhbmNoKSBhbmQgc3RyZXRjaGVkIFBzZXVkb3RpbWUKCmRmX3BkYXRhIDwtIHBEYXRhKG5ld19jZHMpW2MoJ29yaWdpbmFsX2NlbGxfaWQnLCAnQnJhbmNoJywgJ1N0YXRlLmxhYmVscycsICdQc2V1ZG90aW1lJyldCgojZ2V0IGV4cHJlc3Npb24gdmFsdWVzIGZvciBldmVyeSBjZWxsIElEIGZyb20gdGhlIG5ldyBjZHMKZ2VuZXNfZGYgPC0gYXMubWF0cml4KHQoc2V1cm9iakBkYXRhW2dlbmVzLCBkZl9wZGF0YSRvcmlnaW5hbF9jZWxsX2lkXSkpCgojY2JpbmQgdGhlIGV4cHJlc3Npb24gdmFsdWVzIHdpdGggdGhlIHJlbGV2YW50IG1ldGFkYXRhCmRmIDwtIGNiaW5kKGRmX3BkYXRhLCBhcy5kYXRhLmZyYW1lKGdlbmVzX2RmKSkKYGBgCgpgYGB7cn0KcGxvdF9wc2V1ZG90aW1lIDwtIGZ1bmN0aW9uKGdlbmUpewogIHAgPC0gZ2dwbG90KGRmLCBhZXNfc3RyaW5nKHg9J1BzZXVkb3RpbWUnLCB5PWdlbmUpKSArCiAgICBnZW9tX3BvaW50KHNoYXBlID0gMjEsIGNvbG91ciA9ICJibGFjayIsIHNpemUgPSAxLCBzdHJva2UgPSAwLCBhbHBoYT0wLjIsIGFlcyhmaWxsPVN0YXRlLmxhYmVscyksIHNob3cubGVnZW5kPUYpICsKICAgIGdlb21fc21vb3RoKHNlID0gRkFMU0UsIGFlcyhjb2xvcj1CcmFuY2gpLCBzcGFuPTAuOSwgbWV0aG9kPSdsb2VzcycsIHNpemU9MikgICsgCiAgICBzY2FsZV9jb2xvcl9tYW51YWwodmFsdWVzPWNvbG9ycy5wc2V1ZG90aW1lLmxpbmVzKSArCiAgICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXM9Y29sb3JzLnBzZXVkb3RpbWUucG9pbnRzKSArCiAgICBzY2FsZV95X2NvbnRpbnVvdXMobWlub3JfYnJlYWtzPTEpICsKICAgIHhsYWIoJ1BzZXVkb3RpbWUgKHN0cmV0Y2hlZCknKSArCiAgICBnZ3RpdGxlKGdlbmUpICsKICAgIHlsYWIoJ0V4cHJlc3Npb24nKSArCiAgICB0aGVtZShwbG90LnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemU9MzApLCBsZWdlbmQudGV4dD1lbGVtZW50X3RleHQoc2l6ZT0zMCksIGF4aXMudGV4dD1lbGVtZW50X3RleHQoc2l6ZT0xNSksIGF4aXMudGl0bGU9ZWxlbWVudF90ZXh0KHNpemU9MjApLCBsZWdlbmQudGl0bGU9ZWxlbWVudF90ZXh0KHNpemU9MzApLCBsZWdlbmQua2V5LnNpemU9dW5pdCgxLjUsICdjbScpKQogIHJldHVybihwKQp9CmBgYAoKUHNldWRvdGltZSBwbG90cy4KCmBgYHtyLCBmaWcud2lkdGg9MjQsIGZpZy5oZWlnaHQ9MjQsIGZpZy5hbGlnbiA9ICJjZW50ZXIifQojcGxvdHMgPC0gbGFwcGx5KGdlbmVzLCBwbG90X3BzZXVkb3RpbWUpCgpwbG90X2dyaWQocGxvdGxpc3Q9cGxvdHMsIG5jb2w9NCkKYGBgCgpQc2V1ZG90aW1lIHBsb3RzIFQ1IHByZWN1cnNvcnMKCmBgYHtyfQpnZW5lcyA8LSBjKCdDRkQnLCdGQUJQNCcsJ1NBQTEnLCAnQVBPRScsJ01HUCcsJ0dTTicsJ0dQWDMnLCdBREgxQicsJ0FQT0QnLCdNVDFYJykKZ2VuZXMyIDwtIGMoJ0tSVDE4JywgJ1RIQlMxJywgJ1BUWDMnLCAnQ1RHRicsICdTRVJQSU5FMicsICdUQUdMTicsICdUTTRTRjEnKQoKZGZfcGRhdGFfVDUgPC0gVDVfcHJlY3Vyc29yc0BtZXRhLmRhdGFbYygnU3RhdGUubGFiZWxzJywgJ1BzZXVkb3RpbWVfc3RyZXRjaGVkJyldCmdlbmVzX2RmX1Q1IDwtIGFzLm1hdHJpeCh0KFQ1X3ByZWN1cnNvcnNAZGF0YVt1bmlxdWUoYyhnZW5lcywgZ2VuZXMyKSksXSkpCmRmX1Q1IDwtIGNiaW5kKGRmX3BkYXRhX1Q1LCBhcy5kYXRhLmZyYW1lKGdlbmVzX2RmX1Q1KSkKCnBsb3RfcHNldWRvdGltZV9UNSA8LSBmdW5jdGlvbihnZW5lKXsKICBwIDwtIGdncGxvdChkZl9UNSwgYWVzX3N0cmluZyh4PSdQc2V1ZG90aW1lX3N0cmV0Y2hlZCcsIHk9Z2VuZSkpICsKICAgIGdlb21fcG9pbnQoc2hhcGUgPSAyMSwgY29sb3VyID0gImJsYWNrIiwgc2l6ZSA9IDEsIHN0cm9rZSA9IDAsIGFscGhhPTAuMiwgYWVzKGZpbGw9U3RhdGUubGFiZWxzKSwgc2hvdy5sZWdlbmQ9RikgKwogICAgZ2VvbV9zbW9vdGgoc2UgPSBGQUxTRSwgYWVzKGNvbG9yPVN0YXRlLmxhYmVscyksIHNwYW49MC45LCBtZXRob2Q9J2xvZXNzJywgc2l6ZT0yLCBzaG93LmxlZ2VuZD1GKSAgKyAKICAgIHNjYWxlX2NvbG9yX21hbnVhbCh2YWx1ZXM9YygnI2VkZTViNicpKSArCiAgICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXM9Y29sb3JzLnBzZXVkb3RpbWUucG9pbnRzKSArCiAgICBzY2FsZV95X2NvbnRpbnVvdXMobWlub3JfYnJlYWtzPTEpICsKICAgIHhsYWIoJ1BzZXVkb3RpbWUgKHN0cmV0Y2hlZCknKSArCiAgICBnZ3RpdGxlKGdlbmUpICsKICAgIHlsYWIoJ0V4cHJlc3Npb24nKSArCiAgICB0aGVtZShwbG90LnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemU9MzApLCBsZWdlbmQudGV4dD1lbGVtZW50X3RleHQoc2l6ZT0zMCksIGF4aXMudGV4dD1lbGVtZW50X3RleHQoc2l6ZT0xNSksIGF4aXMudGl0bGU9ZWxlbWVudF90ZXh0KHNpemU9MjApLCBsZWdlbmQudGl0bGU9ZWxlbWVudF90ZXh0KHNpemU9MzApLCBsZWdlbmQua2V5LnNpemU9dW5pdCgxLjUsICdjbScpKQogIHJldHVybihwKQp9CmBgYAoKCmBgYHtyIGZpZy53aWR0aD0xMiwgZmlnLmhlaWdodD0xNiwgZmlnLmFsaWduPSdjZW50ZXInfQpwbG90cyA8LSBsYXBwbHkoZ2VuZXMsIHBsb3RfcHNldWRvdGltZV9UNSkKcGxvdF9ncmlkKHBsb3RsaXN0PXBsb3RzLCBuY29sPTMpCmBgYAoKYGBge3IgZmlnLndpZHRoPTEyLCBmaWcuaGVpZ2h0PTEyLCBmaWcuYWxpZ249J2NlbnRlcid9CnBsb3RzIDwtIGxhcHBseShnZW5lczIsIHBsb3RfcHNldWRvdGltZV9UNSkKcGxvdF9ncmlkKHBsb3RsaXN0PXBsb3RzLCBuY29sPTMpCmBgYAoKRmVhdHVyZVBsb3RzCgpgYGB7ciBmaWcud2lkdGg9MTYsIGZpZy5oZWlnaHQ9MjUsIGZpZy5hbGlnbj0nY2VudGVyJ30KRmVhdHVyZVBsb3Qoc2V1cm9iaiwgZmVhdHVyZXMucGxvdD1jKGdlbmVzLCBnZW5lczIpLCBjb2xzLnVzZT1jKCdncmF5JywgJ2JsdWUnKSwgbm8ubGVnZW5kPUYsIG5Db2w9MykKYGBgCgo=